/******************************************************************************
* This file is part of is32p218 platform,
* Copyright (c) 2009 HangZhou InfoStrong CO.,LTD. All rights reserved.
* This software may only be used under the terms of a valid, current,
* end user license from InfoStrong.
* Nothing else gives you the right to use this software.   
*
* Name:   os_cfg.h
* Desc:   OS configuration file
* Author: Jerry
* Date:   2009-12-1
* Note:   
* History:
*
******************************************************************************/

#ifndef __OS_CFG_H__
#define __OS_CFG_H__


#define OS_STACK_CHECK_EN		1
#define OS_ARG_CHK_EN			1
#define OS_TSK_NAME_EN			1
#define OS_QUE_EN				1
#define OS_QUE_NAME_EN			1
#define OS_SEM_EN				1
#define OS_SEM_NAME_EN			1
#define OS_FLG_EN				1
#define OS_FLG_NAME_EN			1
#define OS_MEM_EN				1
#define OS_TMR_EN				1
#define OS_TMR_NAME_EN			1
#define OS_MTX_EN				0


//    - level 0  (highest) for system timers task
//    - level 31 (lowest) for system idle task
#define  OS_NUM_PRIORITY        8  //-- 0..31  Priority 0 always is used by timers task
#define  OS_LO_PRIO				(OS_NUM_PRIORITY-2)		// (OS_NUM_PRIORITY-1) for idle task
#if OS_NUM_PRIORITY>32
#error "!!!!!!!,OS_NUM_PRIORITY is too big!, it should be less than or equal with 32"
#endif

#define OS_nUS_PER_TICK			10000			// 10000us

#define OS_MEM_SIZE(x)			((x+3)&0xFFFFFFFC)


#endif /* __OS_CFG_H__ */

